home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Merciful 5
/
Merciful - Disc 5.iso
/
software
/
r
/
real_3d
/
real3dv3.3b.dms
/
real3dv3.3b.adf
/
RPL.LZH
/
RPL
/
reestabl.rpl
< prev
next >
Wrap
Text File
|
1995-05-01
|
1KB
|
67 lines
(
( Re-establishes the relationship between target objects and an animation
( method ie. assigns 0 to all ISKE tags of the selected objects.
(
"objects.rpl" LOAD
"locks.rpl" LOAD
"tags.rpl" LOAD
: ReClearISKE
PARAM
VARIABLE aObject
ENDPARAM
( check if there is 'ISKE' tags attached to the object and clear it
aObject FETCH "ISKE" O_FINDTAG DUP
IF
T.aVAL + 0 SWAP STORE
ELSE
DROP
ENDIF
;
( Recursively handle given object
: ReEstabl
PARAM
VARIABLE aObj
ENDPARAM
aObj FETCH ReClearISKE
aObj FETCH O_GETSUB
BEGIN DUP WHILE
DUP ReEstabl
O_GETNEXT
REPEAT
DROP
;
( Re-establish selected objects
: ReEstablish
( Lock object data
iLOCK_SHARED O_LOCK
( fetch selected objects on stack
O_GETSEL
( scan through selected objects and call 'ReEstabl'
BEGIN DUP WHILE
ReEstabl
REPEAT
DROP
( release object data
iLOCK_REMOVE O_LOCK
;
( call Re-Establish when this file is loaded
ReEstablish
( Get rid of ReEstablish
FORGET ReClearISKE